configuration Timer1PWMC {
	provides {
		interface MotorControl as Motor1;
		interface MotorControl as Motor2;
		interface MotorControl as Motor3;
	}
}
implementation {
	components HplAtm128Timer1C, Timer1PWMP;
	Timer1PWMP.TimerCtrl -> HplAtm128Timer1C;
	Timer1PWMP.CompareA -> HplAtm128Timer1C.Compare[0];
	Timer1PWMP.CompareB -> HplAtm128Timer1C.Compare[1];
	Timer1PWMP.CompareC -> HplAtm128Timer1C.Compare[2];
	
	components MainC;
	MainC.SoftwareInit -> Timer1PWMP.Init;

	components HplAtm128GeneralIOC as GPIO;

	Timer1PWMP.DirAPin -> GPIO.PortA3;
	Timer1PWMP.DirBPin -> GPIO.PortA4;
	Timer1PWMP.DirCPin -> GPIO.PortA5;
	
	Motor1 = Timer1PWMP.Motor1;
	Motor2 = Timer1PWMP.Motor2;
	Motor3 = Timer1PWMP.Motor3;
	
	components McuSleepC;
	McuSleepC.McuPowerOverride -> Timer1PWMP;
}
